﻿using Lis.Dto;
using Lis.DTO;
using Lis.Model;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace Lis.Repository
{
    public class UnitOfWork
    {
        /// <summary>
        /// 获取用户管理仓储
        /// </summary>
        public GenericRepository<UserInfo> SysUserInfoRepository
        {
            get { return new UserInfoRepository(); }
        }

        /// <summary>
        /// 获取图书管理仓储
        /// </summary>
        public GenericRepository<BookInfo> SysBookInfoRepository
        {
            get { return new BookInfoRepository(); }
        }

        /// <summary>
        /// 获取图书详情仓储
        /// </summary>
        public GenericRepository<BookDetail> SysBookDetailRepository
        {
            get { return new BookDetailRepository(); }
        }

        /// <summary>
        /// 获取借阅仓储
        /// </summary>
        public GenericRepository<LoanBookDto> SysCirculateRepository
        {
            get { return new CirculateRepository(); }
        }

        /// <summary>
        /// 获取读者状态仓储
        /// </summary>
        public GenericRepository<UserStatusDto> SysUserStatusRepository
        {
            get { return new UserStatusRepository(); }
        }

        /// <summary>
        /// 预约数据仓储
        /// </summary>
        public GenericRepository<AppointmentInfo> SysAppointmentInfoRepository
        {
            get { return new AppointmentInfoRepository(); }
        }

        /// <summary>
        /// 读者流通权限仓储
        /// </summary>
        public GenericRepository<UserCirculate> SysUserCirculateRepository
        {
            get { return new UserCirculateRepository(); }
        }

        public GenericRepository<AppointmentDto> SysAppointmentRepository
        {
            get { return new AppointmentRepository(); }
        }

        /// <summary>
        /// 日志数据仓储
        /// </summary>
        public GenericRepository<LogInfo> SysLogInfoRepository
        {
            get { return new LogInfoRepository(); }
        }

        /// <summary>
        /// 流通数据仓储
        /// </summary>
        public GenericRepository<CirculateInfo> SysCirculateInfoRepository
        {
            get { return new CirculateInfoRepository(); }
        }
    }
}
